import Vue from 'vue'
import App from './App'
import router from './router/index.js'

Vue.config.productionTip = false

Vue.prototype.test = () => { console.log('test') }
Vue.prototype.name = 'cgsthtm'

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router: router,
  render: h => h(App)
})

console.log(router) // 打印import导入的router

const obj = {
  name: 'cgstht'
}
Object.defineProperty(obj, 'age', { // 给一个对象增加属性
  get() { return 18 }
})
console.log(obj)

// 通过router的beforEach函数使用导航守卫NavigationGuard，获取index.js路由对象中meta定义的title属性，动态设置页面title
// 前置钩子（guard）
router.beforeEach((to, from, next) => {
  document.title = to.meta.title
  console.log('前置钩子')
  next()
})
// 后置钩子（hook）
router.afterEach((to,from) => {
  // 只有两个参数，不需要调用next()函数
  console.log('后置钩子')
})
